/*  1:   */ package org.intellij.plugins.relaxNG;
/*  2:   */ 
/*  3:   */

import com.intellij.patterns.XmlNamedElementPattern;
import com.intellij.patterns.XmlNamedElementPattern.XmlAttributePattern;
import com.intellij.patterns.XmlPatterns;
import com.intellij.psi.PsiReferenceContributor;
import com.intellij.psi.PsiReferenceRegistrar;
import com.intellij.psi.filters.position.PatternFilter;
import com.intellij.xml.util.XmlUtil;
import org.intellij.plugins.relaxNG.references.PrefixReferenceProvider;

/*  4:   */
/*  5:   */
/*  6:   */
/*  7:   */
/*  8:   */
/*  9:   */
/* 10:   */
/* 11:   */
/* 12:   */
/* 13:   */ 
/* 14:   */ public class RelaxNGReferenceContributor
/* 15:   */   extends PsiReferenceContributor
/* 16:   */ {
/* 17:18 */   private static final XmlNamedElementPattern a = XmlPatterns.xmlTag().withNamespace("http://relaxng.org/ns/structure/1.0");
/* 18:20 */   private static final XmlNamedElementPattern.XmlAttributePattern b = XmlPatterns.xmlAttribute("name");
/* 19:22 */   private static final XmlNamedElementPattern.XmlAttributePattern c = (XmlNamedElementPattern.XmlAttributePattern)b.withParent(a.withLocalName(new String[] { "element", "attribute" }));
/* 20:   */   
/* 21:   */   public void registerReferenceProviders(PsiReferenceRegistrar paramPsiReferenceRegistrar)
/* 22:   */   {
/* 23:27 */     XmlUtil.registerXmlAttributeValueReferenceProvider(paramPsiReferenceRegistrar, new String[] { "name" }, new PatternFilter(XmlPatterns.xmlAttributeValue().withParent(c)), true, new PrefixReferenceProvider());
/* 24:   */   }
/* 25:   */ }



/* Location:           E:\idea\

 * Qualified Name:     org.intellij.plugins.relaxNG.RelaxNGReferenceContributor

 * JD-Core Version:    0.7.0.1

 */